Bring Kindness back to Open Source
When you're rude/crisp/sharp/whatever to someone in a PR or Issue, your meanness may have turned off the next generation of open source committer. It's that simple. When folks are just starting out as Code Newbies their initial interactions in this new world matter.
I've been doing this for over 20 years. There's knowledge and (hopefully) wisdom that I've gained in all that time, assuming it's not the same year of experience twenty times. Along with all that time that I (and you!) put in comes great responsibility. We need to think as a community about stewardship, sustainability, and successor management.
There are folks in open source - successful folks - that think that all this talk of "niceness" is overrated. "Talk is cheap, show me the code" is a fun thing to say. But no, talk isn't cheap. It's not cheap, yes, it takes time and patience, but it IS important.
As we try to move towards more representative teams and expand the leadership beyond the old network, this somehow controversial idea of being welcoming and patient to new people is even more important.
There are many folks out there with skills and knowledge that are not joining open source because their initial attempts to contributed were rebuffed.
Jesse Pollak posted two great tweets last week that really point out what's wrong with open source, especially for new people just starting out.
What’s wrong with open source software communities in one DM. Let’s change this. pic.twitter.com/ydCkWae3sl
— Jesse Pollak (@jessepollak) July 18, 2015
Jesse pledged a "no meanness" rule. I join him in this pledge and encourage you to also.
New rule: no meanness on OSS libraries I help maintain. Even people asking not-so-informed Qs should be met with kindness and gratitude.
— Jesse Pollak (@jessepollak) July 1, 2015
I've thought similar things before.
Be kind to amateurs, there are more of them than professionals and they're looking to all of you to see how to act.
— Scott Hanselman (@shanselman) April 14, 2015
Sound like too much work? There are ways to built a welcoming culture into the process. Here's some ideas. I'm interested in yours also.
- Make a contributing.md.
- Gently point folks to it.
- If you get a lot of newbies, write a kind form letter and funnel them towards forums or mentors.
- Create a Getting started friendly FAQ.
- Tag issues with "up-for-grabs" in your repositories.
- Classify by difficulty. Easy, Medium, Hard, Insane.
- Point new people towards samples, easier parts of the code, docs, tutorials, etc. Grow your enthusiasts.
- Join http://up-for-grabs.net
- Consider applying the Contributor Covenant or a similar CoC to your project. Enforce it.
- Make an issue and "only accept a PR from someone who has never contributed to open source" just like Kent C Dodds did for his project!
Have you helped with an open source project? Did you had a bad initial experience? Did it slow you down?
Perhaps you had a great one and your first pull request was awesome? I'd like to hear your story.
Sound off in the comments!
Sponsor: Big thanks to Infragistics for sponsoring the feed this week. Responsive web design on any browser, any platform and any device with Infragistics jQuery/HTML5 Controls. Get super-charged performance with the world’s fastest HTML5 Grid - Download for free now!
About Scott
Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.



About Newsletter
There are others in the community however that just sap the energy from everyone else - Poisonous people.Awesome talk David, thanks for the link! Haven't fully watched it yet but the first 10min I squeezed in over my lunch break were promising.
Issues and PRs are a gift. It seems as though people forget that.Jonathan, let me extend on that: "Issues, PRs and the Open Source Projects they are filed for are a gift. It seems as though people forget that." It's not like the typical maintainers of such projects just spend their whole time slapping themselves on their shoulders, twiddling their thumbs and waiting for contributors to move the project forward ;) But yes, good issues and PRs are a gift. And what you describe sounds like it was a very good PR and something I love to see in my project(s), especially since you tried to get in touch about it first. Bad issues and PRs (e.g. "It doesn't work, please fix!!1!", 3k lines of code without comments, tests or even a description what they are supposed to do, or just a discussion worthy PR at a time people are swamped with other work) are or at least can be a curse that sucks a lot of energy out of maintainers. And even a good PR can be a problem if it happens to not fix something but add a feature the maintainer then has to, well, maintain too but might not even have the means to - there's a lot of "drive-by" PRs out there that can make a code base complicated. That's all I'm asking people to keep in mind too please. I agree that there's a problem with the tone (and also the egos) in Open Source, I too have been known to bang my head against flat surfaces due to that from time to time when wanting to contribute ;);
People submitted patches that would not compile, and we should have ignored them earlier.A lot of the problems I find is that people don't make sure their commit is clean, i.e People put up whatever happens to be in their workspace and I see this done by "Senior" developers inhouse. I can only imagine the nightmare for any project maintainer when you get patches from people that aren't professionals. Everyone does tutorials about how to start of with
Comments are closed.